Part numbering systems are used to uniquely identify a specific instance of a product or good. Families of goods, which are sometimes called a series, have some common attributes (series-based attributes) and some unique attributes that can be varied. A family of goods can be described by listing, in lists or tables on a family/series specification sheet, each attribute options for the family of goods. Such attributes and associated options may include attributes (e.g., size, color, and style), and the associated options (e.g. small, medium, or large; red, white, or blue; long, short, or mid). The owner of the family/series will assign a code to each option and define a specific order in which these codes are concatenated along with a predefined set of character prefixes and suffixes to uniquely identify all the attributes of an individual item. This unique identifier within a product family is referenced by many names including, but not limited to, Item Number, Part Number, Stock Keeping Unit (SKU), Catalog Number, Part ID, and the like. This method can be decoded at point of use by persons who are familiar with the family owner's specification practices. In the prior art, parts catalogs would typically include the codes for each option in a family or series. A purchaser, such as an engineer or technician, would try to identify the family/series of the part needed for a particular project in the catalog, and then construct a part number from the option codes listed for the family/series of the part. This part number would then be used to order the part from the distributor or manufacturer.
Prior art information systems are disconnected from this method of part numbering systems because the information systems require a unique character string or part numbers which are indexed in a database with the whole part number as an indexed key or part of a compound index. Prior art information systems store linked information (attributes) back to a single instance of a part number. This is in part due to the fact that enterprise resource planning (ERP) systems require a unique character string part number for each part number. ERP systems are used by businesses to collect, store, manage and interpret data from many business activities such as product planning, cost and development; manufacturing or service delivery; marketing and sales; inventory management; and shipping and payment. ERP provides an integrated view of core business processes, often in real-time, using common databases maintained by a database management system. A part numbering system needs to be able to provide a part number than can be automatically recognized by an ERP system.
When a purchaser uses a prior art information system, such as an online parts website, to find and order a part, the information system searches through the entire database of indexed part numbers to find matching part numbers. Because of all of the possible combinations of options for a series of parts, there can be millions of possible part number instances (in some cases billions or even trillions). As a result, online parts distributors typically only include 5% to 10% of the possible part number instances in their online database, for example, by including top selling items only. For an engineer or purchaser who needs a specialty part, the part number may not be available from the distributor's information system. In addition, offering a new part series for sale can involve several weeks of coding and data entry to make the new part series available to customers via the distributor's existing online information system, representing a significant cost to the distributor.
What is needed in the art is a database design and associated tools that allow information systems to store and maintain product family/series information in metadata form without the hierarchical and full indexed list of part numbers. Such a system would allow for rapid storage and retrieval of attributes and co-dependent attributes for a part number that may or may not be pre-loaded into an information system.